package com.hwg.shiliupro.service;

import com.hwg.shiliupro.po.Note;

import java.util.List;

public interface NoteService {

    /**
     * 查找笔记集合通过用户id 查自己
     *
     * @param uId 用户id
     * @return {@link List}<{@link Note}>
     */
    public List<Note> selectByUserId(Integer uId);


    /**
     * 查找笔记集合通过用户id  查别人
     *
     * @param uId 你id
     * @return {@link List}<{@link Note}>
     */
    public List<Note> selectByUserIdAndVisible(Integer uId);

    /**
     * 通过笔记id查询笔记内容 查自己
     *
     * @param id id
     * @return {@link Note}
     */
    public Note selectByNoteId(Integer id);

    /**
     * 通过笔记id查询笔记内容 查别人
     *
     * @param id id
     * @return {@link Note}
     */
    public Note selectByNoteIdAndVisible(Integer id);


    /**
     * 删除笔记通过id
     *
     * @param id id
     * @return {@link Boolean}
     */
    public Boolean deleteById(Integer id);

    /**
     * 新增笔记     由于前端需要 返回新增笔记的id 让他存到sessionStroage作笔记区分因此这里返回Note
     *
     * @param note 请注意
     * @return {@link Note}
     */
    public int insert(Note note);

    /**
     * 更新笔记
     *
     * @param note 请注意
     * @return {@link Boolean}
     */
    public Boolean updateNote(Note note);

}
